<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>

<body>
    <script>
        /* 
        倒计时效果
        1.获取两个时间点
        2.转化为时间戳，并相减。
        3.结果转化为时分秒。

        */

        /* 
        转化公式如下：
        d = parseInt(总秒数/ 60/60 /24);   // 计算天数
        h = parseInt(总秒数/ 60/60 %24);   //计算小时
        m = parseInt(总秒数 /60 %60);      //计算分数
        s = parseInt(总秒数%60);           //计算当前秒数

        // 某个时间到当前的倒数计时
        */


        function countDowm(date) {
            //获取时间
            let d1 = new Date();
            // 时间戳
            d1 = d1.getTime();
            let d2 = date.valueOf();
            // 时间戳差值
            let sub = d2 - d1;
            sub = sub / 1000;

            // 公式
            h = parseInt(sub / 60 / 60 % 24)    //   计算小时
            m = parseInt(sub / 60 % 60);     //   计算分数
            s = parseInt(sub % 60);           //   计算当前秒数

            // 补零
            h = h < 10 ? '0' + h : h;
            m = m < 10 ? '0' + m : m;
            s = s < 10 ? '0' + s : s;

            // 字符串拼接
            return h + ":" + m + ":" + s;
        }
        let result = countDowm(new Date('2022-08-18 11:20:00'));
        console.log(result);

    </script>
</body>

</html>